A video controller is a piece of hardware dedicated to processing graphics for display onto a display device such as a monitor. The video controller provides a video feed to the display device. A video feed includes data which is in a format able to be readily used by the display device to display the appropriate images. In order to produce a persistent and stable image on the display device, the video controller must scan the contents of the frame buffer from the memory subsystem of the video controller several times per second. This process consumes a large amount of memory bandwidth. Bandwidth refers to the amount of data able to be transferred to and from the memory within a specified period of time. Additionally, this process consumes a lot of power.
The video controller functionality can affect the performance of systems in which the video controller is integrated with other system components for the purpose of sharing memory and reducing costs. For example, in many server systems where high performance graphic rendering is not required, the video controller can be integrated with another hardware device such as a management controller. A management controller is a hardware/software subsystem used to perform hardware-based management on a server system. When the memory used by the video controller is also used for other purposes, the video controller unnecessarily consumes memory bandwidth when no active display devices are connected to the server system.
A constant video display is not necessary for many server systems such as those used for network routing and data storage purposes. During normal operation of such systems, the servers perform their appropriate computing tasks without any direct human interaction. Human interaction with such server systems is generally limited to a system administrator. The system administrator may only occasionally interact with the server for various maintenance purposes. Consequently, generating a video output during normal operation when no display is being used unnecessarily consumes power. Furthermore, if the video controller is integrated with another system device such as a management processor, than the video controller unnecessarily consumes memory bandwidth. This unnecessary consumption of memory bandwidth and power causes the system utilizing the video controller to operate at less than optimal performance.
Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.